package mapsdev.impl;

import java.util.ArrayList;
import java.util.List;

import mapsdev.Banco;
import mapsdev.ContaBancaria;

public abstract class AbstractBanco implements Banco {

    private final List<ContaBancaria> contas = new ArrayList<ContaBancaria>();

    @Override
    public ContaBancaria conta(int numero) {
        return contas.get(numero);
    }

    public List<ContaBancaria> getContas() {
        return contas;
    }

    @Override
    public int numeroDeContas() {
        return contas.size();
    }

    @Override
    public void adicionaConta(ContaBancaria conta) {
        this.contas.add(conta);
    }

    @Override
    public int quantidadeTotal() {
        int sum = 0;
        for (ContaBancaria ct : this.contas) {
            sum += ct.saldo();
        }
        return sum;
    }

}
